package April.fifteen;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

/*
在Map中 有一个静态嵌套接口 Entry(是将键和值之间的映射关系 变成对象)
        之所以写成静态 是因为Map是一个接口 不能建立对象。而内部类也等于一个内部方法，
    需要用对象名.类名调用 不可取
    所以写成静态类 利用类名.内部类名调用

    entrySet<K,V>
    返回值： 是一个包含键和值之间关系的set集合
 */
public class MapDemo_3 {
    public static void main(String[] args) {
        function_1();
    }

    /*
        利用Map接口中的 Entry内部嵌套类 获取键和值之间的映射关系，
    然后对Map进行遍历
     */
    public static void function_1(){
        Map<Integer,Integer> map = new HashMap<Integer, Integer>();
        map.put(1,11);
        map.put(2,22);
        map.put(3,33);
        map.put(4,44);
        System.out.println(map);
//利用entrySet（）方法
        Set<Map.Entry<Integer,Integer>> set = map.entrySet();
        Iterator<Map.Entry<Integer,Integer>> it =set.iterator();
        while(it.hasNext()){
            Integer j = it.next().getKey();
            Integer i = map.get(j);
            System.out.println(j+"..."+i);
        }
        System.out.println("+++++++++++++++++++++++++++");
//        利用增强for遍历
        for(Map.Entry<Integer,Integer> k: map.entrySet()){
            System.out.println(k.getKey()+"*******"+k.getValue());
        }

    }
}
